/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package be.esi.athanfree.xml;

import java.io.*;
import org.jdom.*;
import org.jdom.input.*;
import java.util.List;
import java.util.Iterator;

public class JDOM2 {

    static org.jdom.Document document;
    static Element racine;

    public static void main(String[] args) {
        //On crée une instance de SAXBuilder
        SAXBuilder sxb = new SAXBuilder();
        try {
            //On crée un nouveau document JDOM avec en argument le fichier XML
            //Le parsing est terminé ;)
            document = sxb.build(new File("Exercice2.xml"));
        } catch (Exception e) {
            System.out.println(e);
        }

        //On initialise un nouvel élément racine avec l'élément racine du document.
        racine = document.getRootElement();
        
        //Méthode définie dans la partie 3.2. de cet article
        afficheALL();
    }
    //Ajouter cette méthodes à la classe JDOM2
    static void afficheALL() {
        //On crée une List contenant tous les noeuds "etudiant" de l'Element racine
        List listEtudiants = racine.getChildren("country");
        System.out.println(listEtudiants.size());
        //On crée un Iterator sur notre liste
        Iterator i = listEtudiants.iterator();

        while (i.hasNext()) {
            Element courant = (Element) i.next();
            List listeVilles = courant.getChildren("city");
            Iterator a = listeVilles.iterator();

            while (a.hasNext()) {
                Element courant2 = (Element) a.next();
                System.out.println(courant2.getChild("state").getValue());


            }

        }
    }
}